home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d21
/
qtech527.arc
/
EXTEND.TEC
< prev
next >
Wrap
Text File
|
1991-05-29
|
6KB
|
100 lines
ID:ET Extended Memory and DESQview
Quarterdeck Technical Note #106
by Dan Sallitt
Extended memory is memory with addresses higher than 1024K (1
megabyte). Extended memory can only exist on machines with
address buses capable of accessing more than 1024K, and requires
a 286 processor or higher; the AT was the first machine that
supported extended memory. DOS can only access the first 1024K
of any machine's address space, and therefore cannot access
extended memory directly; programs that access extended memory
generally must go into protected mode to do so. Real-mode
programs that use extended memory, such as VDISK.SYS, do not run
their code above 1024K; they go into protected mode long enough
to store data in extended memory, then return to real mode.
Extended memory should not be confused with expanded memory, which
does not occupy specific memory addresses and which is associated
with special mapping hardware that allows it to appear as if it is
located below 1024K.
DESQview cannot run conventional, real-mode DOS programs in
extended memory (unless the extended memory is converted into
expanded memory, a process that is easily accomplished on a 386
machine with the help of Quarterdeck's QEMM-386). We can only
accomplish the difficult feat of multitasking beyond 640K with
the aid of the hardware mapping capabilities that expanded memory
can provide. Extended memory, by contrast, is not intelligent
memory: it simply sits above 1024K.
In 1986 Quarterdeck discovered a loophole in DOS that allows
programs to access the first 64K of extended memory without going
into protected mode. DESQview 2.00 and later versions come with
a driver, QEXT.SYS, which, when placed in the CONFIG.SYS file and
used in conjunction with our XDV.COM or DV.COM loaders, allows
DESQview to take 63K of its code out of conventional memory and
place it in extended memory between 1024K and 1088K. QEXT.SYS is
usually only needed on 286 systems, as QEMM-386 is capable of
accomplishing the same task on 386 systems.
In 1988 Microsoft, using the same loophole discovered earlier by
Quarterdeck, announced the existence of the Extended Memory
Specification (XMS), which governs DOS-based access to the first
64K of extended memory as well as protected-mode access to the rest
of extended memory and access to blocks of memory between 640K and
1024K. The XMS has become a standard for extended memory
allocation, and DESQview 2.26 and later versions support running
programs that allocate memory through the XMS inside DESQview
windows. In addition, the copy of QEXT.SYS that comes with
DESQview 2.26 and later versions functions as an XMS manager, and
can, if desired, give other programs access to the first 64K of
extended memory instead of DESQview. (Only one program at a time
can use this 64K block.) QEXT.SYS performs the same XMS functions
as Microsoft's XMS manager HIMEM.SYS, and should be used instead
of, not in addition to, HIMEM.SYS.
Though DESQview cannot run conventional, real-mode DOS programs
in extended memory, it can swap DOS programs back and forth from
extended memory -- if the extended memory is used as a RAM disk
and if the drive letter of the RAM disk is entered in the SWAP
field of the DESQview Setup in the Logical Drives section.
Programs that are swapped out are not running, but swapping
programs back and forth to extended memory (which occurs
automatically under the above circumstances when DESQview runs
out of multitasking memory) is much faster than swapping to the
hard disk.
It has become increasingly common for large programs to take
advantage of protected mode to run in extended memory, using
supplementary utilities called DOS Extenders to handle
transitions between protected mode and real mode. To make it
possible for DOS Extenders to coexist with 386 memory managers,
Quarterdeck and Phar Lap (a leading manufacturer of DOS
Extenders) collaborated in 1988 to create the VCPI (Virtual
Control Program Interface) specification. Many other vendors,
including all major manufacturers of DOS Extenders, now support
the VCPI. DESQview users who also have QEMM-386 (version 4.1 or
later) can run VCPI protected mode programs in DESQview windows
alongside DOS-based programs, without the need to reserve separate
sections of extended and expanded memory for the different
programs. The VCPI is a specification for 386 and 486 processors
only. DESQview 2.26 and later versions can run multiple protected
mode programs on 286 systems if the protected mode programs use XMS
services to access extended memory. However, it is impossible on
286 systems to convert extended and expanded memory back and forth
on demand, as can be done on a 386 system or higher; the 286
systems must be configured with enough extended memory to run the
DOS Extender programs and enough expanded memory to satisfy
DESQview's needs and the needs of other programs that use expanded
memory.
Microsoft Windows 3.0, which can go into protected mode and run
Windows-based applications in extended memory on a 286 system or
higher, is an example of a DOS Extender-type program that is not
a client of the VCPI. However, special adjustments were made to
DESQview 2.3 and QEMM 5.1 to allow Windows 3.0 to run in its
standard mode (which uses the processor's protected mode) inside
a DESQview window alongside other applications.
Copyright (C) 1991 by Quarterdeck Office Systems
* * * E N D O F F I L E * * *